Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update openvino-mlir-gc integration #167

Open
wants to merge 22 commits into
base: mlir
Choose a base branch
from
Open

Conversation

niuxiaog
Copy link

No description provided.

@dchigarev
Copy link

@niuxiaog could you please briefly describe what this PR does?

@niuxiaog
Copy link
Author

@niuxiaog could you please briefly describe what this PR does?

Sure. I will update the RFC, which introduces the constant tensor folding pass and the related parts in OV integration.

@niuxiaog
Copy link
Author

niuxiaog commented Sep 10, 2024

@niuxiaog could you please briefly describe what this PR does?

  1. DLTI information is attached to llvm module. Currently, default values are from SPR.
  2. Support for constant tensors folding pass is added, including marking constant input tensors, parsing relevant information from llvm module optimized by GC, allocating buffers for folded tensors and calling fold and entry funcs correctly. This is an experimental implementation and will be optimized later.
  3. Scripts for benchmarking is updated to support multi threading.
  4. Building and linking errors are fixed to integrate latest main branch of GC.
  5. Some experimental codes for testing, such as generating constant weights for mlp, splitting out the TransposeOp from linalg::MatmulTransposeBOp. These codes will be deleted before merging.

For a more complete introduction of constant tensors folding pass, please refer to RFC.

@niuxiaog niuxiaog marked this pull request as ready for review September 10, 2024 05:37
const auto inputs = context.getInputs(node);
mlir::SmallVector<Value, 2> ins{inputs[0]};

if (isTransposedB) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we need to split it?

Copy link
Author

@niuxiaog niuxiaog Sep 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is experimental code to test that the TransposeOp can be moved to fold() by the constant tensor folding pass. It will be deleted later.

@slyalin slyalin mentioned this pull request Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants